package com.his.invdrug.service;

import com.his.invdrug.entity.InvDrugStorageKey;
import com.his.invdrug.vo.InvDrugHeaderItemVo;
import com.his.invdrug.vo.InvDrugStorageVo;

import java.math.BigDecimal;

public interface InvDrugStorageService {
    /**
     * 通过出入库单项目信息 操纵结存
     *      通过主键来判断是否有结存数据，   有：原数据上操纵，无：新增数据
     *      原数据上操纵：验证操作，避免结存为负的情况发生
     */
    void controlStorage(InvDrugHeaderItemVo invDrugHeaderItemVo);

    /**
     * 项目操作数量结存数量比较，判断结存是否充足
     * @param invDrugStorageKey 结存主键
     * @param itemNum 操作数量
     * @return true:充足  false：不足
     */
    boolean temNumCompareStorage(InvDrugStorageKey invDrugStorageKey, BigDecimal itemNum);
}
